<?php

class LRegex {

    /**
     * 检验字符串是否符合正则表达式验证 
     *
     * @param string $str 需要验证的源字符串
     * @param string $regex 参与验证的正则表达式
     * @return void
     */
    public static function match(string $str, string $regex) {
        if (!preg_match($regex, $str)) return false;
        return true;
    }

    /**
     * 使用preg查找
     *
     * @param string $str
     * @param string $regex
     * @return void
     */
    public static function find(string $str, string $regex) {
        $matchs = [];
        preg_match_all($regex, $str, $matchs);
        return $matchs;
    }

    /**
     * 使用preg替换
     *
     * @param string $str 源字符串
     * @param string $regex 被替换的目标字符串正则表达式
     * @param string $replace 替换为的目标字符串，默认空字符串
     * @param int $count 可以替换的次数，默认为替换所有
     * @return string 被替换完成的源字符串
     */
    public static function replace(string $str, string $regex, string $replace = '', int $count = -1) {
        return preg_replace($regex, $replace, $str, $count);
    }
}
